package cn.edu.scau.cmi.luodongmei.singleton;

import java.util.ArrayList;

public class Marshals {
	// 多例数量
	  private static final int N = 10;
	  // 存放N个实例对象的容器
	  private static ArrayList<Marshals> list = new ArrayList<Marshals>(N);
	  // 每个对象的序号 标识
	  private int no;
	  // 私有构造方法 防止外界应用程序实例化
	  private Marshals(int no) {
	    this.no = no;
	    //System.out.println("创建元帅[" + no + "]");
	  }
	  // 实例化N个对象实例
	  static {
	    // 添加Marshals对象实例
	    for (int i = 0; i < N; i++) {
	      list.add(new Marshals(i));
	    }
	  }
	  /**
	   * 随机获得 实例对象
	   */
	  public static Marshals getRandomInstance() {
	    // 获得随机数字
	    int num = (int) (Math.random() * N);
	    // 获得list中的对象实例
	    return list.get(num);
	  }
	  public int getNo() {
	    return no;
	  }
	  public void setNo(int no) {
	    this.no = no;
	  }
}
